package com.team.coupon.mapper;

import com.team.coupon.domain.BizCoupon;
import org.apache.ibatis.annotations.Param;
import org.apache.ibatis.annotations.Select;

import java.util.Date;
import java.util.List;

/**
* @author 王双印
* @description 针对表【biz_coupon(卡券定义表)】的数据库操作Mapper
* @createDate 2025-07-09 16:17:03
* @Entity generator.domain.BizCoupon
*/
public interface BizCouponMapper {

    int deleteByPrimaryKey(Long id);

    int insert(BizCoupon record);

    int insertSelective(BizCoupon record);

    BizCoupon selectByPrimaryKey(Long id);

    int updateByPrimaryKeySelective(BizCoupon record);

    int updateByPrimaryKey(BizCoupon record);

    //根据时间查询优惠券，每天凌晨将今天可以抢购的优惠券加入到redis中
    List<BizCoupon> selectCouponByTime(@Param("instantStart") String instantStart ,@Param("page") int page ,@Param("pageSize") int pageSize);

    //根据id，查询一条当天参与秒杀的优惠券
    BizCoupon selectCouponById(@Param("id") Long id , @Param("instantStart") String instantStart);

    int updateCouponStock(@Param("couponId") Long couponId);

    List<BizCoupon> getCouponByEntityId(@Param("entity") Long entityId ,@Param("date") String date);

    List<BizCoupon> getCouponByType(@Param("type") int type,@Param("today") String today);

}
